
public class LC678M {
    public boolean checkValidString(String s) {
        int n=s.length();
        char[] arrays=s.toCharArray();
        int min=0;
        int max=0;
        for (char ch:arrays){
            if (ch=='('){
                min++;
                max++;
            }
            else if (ch==')'){
                min=Math.max(min-1,0);
                max--;
                if (max<0){
                    return false;
                }
            }
            else {
                min=Math.max(min-1,0);
                max++;
            }
        }
        return min==0;
    }
}
